home *** CD-ROM | disk | FTP | other *** search
/ Gekkan Dennou Club 147 / Gekkan Dennou Club - 2000.8 Vol. 147 (Japan).7z / Gekkan Dennou Club - 2000.8 Vol. 147 (Japan) (Track 1).bin / tools / ivl / src / hufilec.h < prev    next >
Text File  |  2000-06-17  |  3KB  |  66 lines

  1. #if    !defined(HUFILEC_H_HAS_INCLUDED)
  2. #define    HUFILEC_H_HAS_INCLUDED
  3. /*
  4. *    ファイル取り扱い関数群(for Human68k)
  5. *
  6. *    from Dec. 3,1993    by dummy.x.(with J-S.I.)
  7. */
  8. #include    <time.h>
  9.  
  10. /* 関数宣言 */
  11.     /* ファイル名 */
  12. extern int is_human_name(const char *fnamp);
  13. extern void get_prog_name(char *bufp, const char *pnamp);
  14. extern char *remake_unsame_filename(char *fnbufp);
  15. extern int get_drive_no(const char *drvnamp);
  16. extern int make_full_path(char *fullp, const char *fnamp);
  17. extern void separate_file_name(char *drvp, char *dirp, char *basep, char *extp, const char *fnamp);
  18. extern char *fgetnamep(const char *fnamp);
  19.         /* パス名 */
  20. extern char path_separator(void);
  21. extern int is_path_separator(int ch);
  22. extern char *append_path_separator(char *dirnamp);
  23. extern char *fcatpath(char *fnamp, const char *pathp);
  24. extern char *fcutpath(char *pbufp, const char *fnamp);
  25. extern int is_there_path(const char *fnamp);
  26. extern int is_path_only(const char *fnamp);
  27.         /* 拡張子 */
  28. extern char *getextpos(const char *fnamp);
  29. extern char *getextpos0(const char *fnamp);
  30. extern char *fcatext(char *fnamp, const char *extp);
  31. extern char *fcatext_upper(char *fnamp, const char *extp);
  32. extern char *fcatext_lower(char *fnamp, const char *extp);
  33. extern char *fchgext(char *fnamp, const char *extp);
  34. extern char *fchgext_upper(char *fnamp, const char *extp);
  35. extern char *fchgext_lower(char *fnamp, const char *extp);
  36.     /* ファイル/ドライブ情報の取得/設定 */
  37. extern long get_drive_free(int drvno);
  38. extern int fexist(const char *fnamp, int atr);
  39. extern int is_same_file(const char *fn1p, const char *fn2p);
  40. extern long get_file_size(const char *fnamp);
  41. extern int set_file_time(const char *fnamp, time_t tim);
  42. extern time_t get_file_time(const char *fnamp);
  43. extern int set_same_file_time(const char *dstfnp, const char *srcfnp);
  44.     /* ファイルアクセス */
  45. extern void *read_file_all(const char *fnamp, unsigned long *fsizp);
  46. extern char *fgetsb(char *bufp, size_t size, FILE *fp);
  47. extern char *fgetsnn(char *bufp, size_t size, FILE *fp);
  48. extern char *fgets_skipsp(char *bufp, size_t size, FILE *fp);
  49.     /* 環境変数絡み */
  50. extern char *get_env_path(char *bufp, const char *envnamp);
  51. extern char *cut_from_pathseq(char *dstp, const char **envpp);
  52.  
  53.  
  54. /* 関数偽装マクロ
  55. *    NO_MACRO_ が定義されなければ、一部の関数をマクロ呼び出しにしてしまう
  56. */
  57. #if    !defined(NO_MACRO_)
  58. #include    <string.h>
  59.  
  60. #define    is_path_separator(ch)    (((ch) == '\\') || ((ch) == ':') || ((ch) == '/'))
  61. #define    is_there_path(fnp)    (strpbrk((fnp), "\\/:") != NULL)
  62.  
  63. #endif    /* !defined(NO_MACRO_) */
  64.  
  65. #endif    /* !defined(HUFILEC_H_HAS_INCLUDED) */
  66.